AWS Global Accelerator でフローログを取得する方法を教えてください
困っていた内容
AWS Global Accelerator でネットワークのログを取得したいです。
マネジメントコンソールを見ると無さそうですが、ログ取得機能はありますか。
ある場合は設定方法を教えてください。
どう対応すればいいの?
AWS CLI のupdate-accelerator-attributesを実行してください。
$ aws globalaccelerator update-accelerator-attributes \
--accelerator-arn 【AWS Global Accelerator ARN】 \
--region us-west-2 \
--flow-logs-enabled \
--flow-logs-s3-bucket 【S3 バケット名】 \
--flow-logs-s3-prefix 【プレフィックス】
AWS Global Accelerator は、処理された通信内容を記録するフローログに対応しています。
AWS Global Accelerator のフロー - AWS Global Accelerator
フローログにより、AWS Global Accelerator のアクセラレーターで、ネットワークインターフェイスとの間で行き来する IP アドレスに関する情報を取得できるようになります。
2024年11月時点で、AWS マネジメントコンソールからはフローログの設定はできませんが、AWS CLI や API、SDK 等からは変更でき、AWS CLI の場合はupdate-accelerator-attributesで設定可能です。
なお、フローログの出力先は Amazon S3 バケットとなり事前に作成が必要です。
また、フローログを有効にしても、すぐにログが S3 に出力されていない場合があるためご注意ください。
AWS Global Accelerator のフロー - AWS Global Accelerator
Global Accelerator は、ロギングが有効化し 4 時間後ほどから確実にログファイル配信を開始します。この時間以前にも少しのログファイルを取得できる場合もあります。